package io.renren.modules.eightapp.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.renren.common.service.impl.CrudServiceImpl;
import io.renren.modules.eightapp.dao.EiHouseInfoDao;
import io.renren.modules.eightapp.dto.EiHouseInfoDTO;
import io.renren.modules.eightapp.entity.EiHouseInfoEntity;
import io.renren.modules.eightapp.service.EiHouseInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * @author Mark 1132115960@gmail.com
 * @since 1.0.0 2022-12-29
 */
@Service
public class EiHouseInfoServiceImpl extends CrudServiceImpl<EiHouseInfoDao, EiHouseInfoEntity, EiHouseInfoDTO> implements EiHouseInfoService {
    @Autowired
    EiHouseInfoDao eiHouseInfoDao;

    @Override
    public QueryWrapper<EiHouseInfoEntity> getWrapper(Map<String, Object> params) {
        String id = (String) params.get("id");

        QueryWrapper<EiHouseInfoEntity> wrapper = new QueryWrapper<>();
        wrapper.eq(StringUtils.isNotBlank(id), "id", id);

        return wrapper;
    }


    @Override
    public void setHouseIcon(EiHouseInfoDTO eiHouseInfoDTO) {
        QueryWrapper<EiHouseInfoEntity> queryWrapper = new QueryWrapper<>();
        EiHouseInfoEntity eiHouseInfoEntity = new EiHouseInfoEntity();
        BeanUtils.copyProperties(eiHouseInfoDTO, eiHouseInfoEntity);
        queryWrapper.lambda().eq(EiHouseInfoEntity::getId, eiHouseInfoDTO.getId());
        eiHouseInfoDao.update(eiHouseInfoEntity, queryWrapper);
    }

    @Override
    public List<EiHouseInfoEntity> getHouseIconById(Integer id) {
        QueryWrapper<EiHouseInfoEntity> queryWrapper=new QueryWrapper<>();
        queryWrapper.lambda().eq(EiHouseInfoEntity::getId,id);
        List<EiHouseInfoEntity> house = eiHouseInfoDao.selectList(queryWrapper);
        return house;
    }
}